package com.douyin.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.douyin.vo.VideoVO;

public interface RecommendationService {

    /**
     * 获取用户个性化推荐视频
     * @param userId 用户ID
     * @param pageNum 页码
     * @param pageSize 每页数量
     * @return 分页的推荐视频列表
     */
    IPage<VideoVO> getPersonalRecommend(Long userId, Integer pageNum, Integer pageSize);

    /**
     * 热门视频推荐（针对新用户或无行为用户）
     * @param pageNum 页码
     * @param pageSize 每页数量
     * @return 分页的热门视频列表
     */
    IPage<VideoVO> getHotRecommend(Integer pageNum, Integer pageSize);

    /**
     * 刷新用户推荐缓存（定时任务或行为触发）
     * @param userId 用户ID
     */
    void refreshRecommendationCache(Long userId);
}